package service;

import bean.Book;
import bean.Borrowed;
import bean.User;
import dao.BorrowedDao;
import java.util.List;

//封装业务管理逻辑   @author

public class BorrowedService {

    private BorrowedDao borrDao;
    public BorrowedService(){
        borrDao = new BorrowedDao();
    }

    /*
    查询用户借阅信息
    @param   user_id  用户编号
    @return   List
     */

    public List<Borrowed> queryBorrowedsOfUser(String user_id){
        return borrDao.queryBorrowedsByUser(new User(user_id));
    }


    /*
    查询图书的借阅信息
    @param   book_id  图书编号
    @return   List
     */

    public List<Borrowed> queryBorrowedsOfBook(String book_id){
        return borrDao.queryBorrowedsByBook(new Book(book_id));
    }


    /*
    根据用户ID 和图书的id查询图书的借阅信息
    @param   user_id  用户编号
    @param   book_id  图书编号
    @return   List
     */
    public List<Borrowed> queryOneBorrowed(String user_id,String book_id){
        return borrDao.queryBorrowedsByUser2Book(new User(user_id),new Book(book_id));
    }



     /*
    查询所有图书的借阅信息
     @return   List
     */
    public List<Borrowed> queryAllBorroweds(){
        return borrDao.queryBorroweds();
    }

    /*
    借阅图书
    @param   borr 借阅信息
    @return   boolean true 成功  false 失败
     */
    public boolean BorrowBook(Borrowed borr) {
        return borrDao.addBorrowed(borr);
    }



    /*
    续借图书
    @param borr  借阅信息，用户编号和图书编号必须相同，其他字段为修改之后的值
    @return Boolean  true 成功 false 失败
     */

    public boolean BorrowAgain(Borrowed borr) {
        return borrDao.modBorrowed(borr);
    }



    /*
    归还图书
    @param borr  借阅信息，用户编号和图书编号必须相同，其他字段为修改之后的值
    @return Boolean  true 成功 false 失败
     */
    public boolean BorrowReturn(Borrowed borr) {
        return borrDao.delBorrowed(borr);
    }
}
